<?php

namespace app\api\controller;

use think\Controller;
use think\Request;
use app\api\model\login as loginModel;
use think\Validate;

class Login extends BaseApi
{
    /**
     * 显示资源列表
     *
     * @return \think\Response
     */
    public function index()
    {
    
        // return json(['nameTEST'=>'12']);
        //拿到接口穿低过来的参数
        $params = input();

        //拿到用户名 密码  校验规则
        //设置验证规则   用户名 密码必填
        $rule = [
            'name' => 'require',
            'password' => 'require'
        ];
        $val = new Validate($rule);
        $res = $val->check($params, $rule);
        if (!$res) {
            # code.
            $this->fail('参数缺失', 1001);
        }

        // 取出用户名 密码
        $phone = $params['name'];
        $pwd = $params['password'];

        //密码加密处理
        $pwd = md5_password($pwd);

        //数据库操作
        $model = new loginModel();
        $userlist = $model
            ->where('username', $phone)
            ->select();
        $usercount = count($userlist);
        if ($usercount == 0) {
            //用户名不存在 也就是未注册
            $this->fail("请先注册", 1002);
        }
            
        //查询用户名和密码是否正确
        $list = $model->field('id,username,email,nickname')
            ->where('username', $phone)
            ->where('password', $pwd)
            ->select();


        // 判断是否查找到数据
        $rescount = count($list);
        if ($rescount == 0) {
            $this->fail("用户名或密码错误，请核对！", 1003);
        }

        $this->ok($list);

    }

    /**
     * 显示创建资源表单页.
     *
     * @return \think\Response
     */
    public function create()
    {
        //
    }

    /**
     * 保存新建的资源
     *
     * @param  \think\Request  $request
     * @return \think\Response
     */
    public function save(Request $request)
    {
        //
    }

    /**
     * 显示指定的资源
     *
     * @param  int  $id
     * @return \think\Response
     */
    public function read($id)
    {
        //
    }

    /**
     * 显示编辑资源表单页.
     *
     * @param  int  $id
     * @return \think\Response
     */
    public function edit($id)
    {
        //
    }

    /**
     * 保存更新的资源
     *
     * @param  \think\Request  $request
     * @param  int  $id
     * @return \think\Response
     */
    public function update(Request $request, $id)
    {
        //
    }

    /**
     * 删除指定资源
     *
     * @param  int  $id
     * @return \think\Response
     */
    public function delete($id)
    {
        //
    }
}
